package com.stark.wechat.service.message.model;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * 选用模板请求体
 *
 * @author <a href="mengbin@eastsoft.com.cn">Ben</a>
 * @version 1.0.0
 * @see <a href="https://developers.weixin.qq.com/doc/service/api/notify/template/api_addtemplate.html#%E8%AF%B7%E6%B1%82%E4%BD%93-Request-Payload">基础消息与订阅通知 / 模板消息 / 选用模板</a>
 * @since 2025/8/6
 */
@Data
@Accessors(chain = true)
public class AddTemplateRequestPayload implements Serializable {

    private static final long serialVersionUID = 7429481826817406837L;

    /**
     * 模板库中模板的编号，有“TM**”和“OPENTMTM**”等形式,对于类目模板，为纯数字ID
     */
    @JsonProperty("template_id_short")
    private String templateIdShort;

    /**
     * 选用的类目模板的关键词,按顺序传入,如果为空，或者关键词不在模板库中，会返回40246错误码
     */
    @JsonProperty("keyword_name_list")
    private List<String> keywordNameList = new ArrayList<>();

}
